package com.yugao.fintech.antelope.mps.core;

import com.yugao.fintech.antelope.mps.api.constatnts.ChannelCodeEnum;
import com.yugao.fintech.antelope.mps.api.constatnts.ChannelTypeEnum;
import com.yugao.fintech.antelope.mps.api.constatnts.MsgPushStatus;
import com.yugao.fintech.antelope.mps.api.model.content.BaseMsgContent;
import com.yugao.fintech.antelope.mps.core.parser.AbstractTemplateParser;
import com.yugao.fintech.antelope.mps.model.entity.MsgPushTask;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;


@ToString
@Getter
@Setter
public class PushTaskContext {
    private Long id;

    /**
     * 推送的任务
     */
    private MsgPushTask pushTask;


    /**
     * 消息内容
     */
    private BaseMsgContent msgContent;

    /**
     * 模板配置
     */
    private AbstractTemplateParser tplConfig;

    /**
     * 消息模板类型
     */
    private ChannelTypeEnum channelType;

    /**
     * 渠道编码
     */
    private ChannelCodeEnum channelCode;

    /**
     * 推送结果, 可能是异常错误信息或者推送之后第三方平台返回的正确或者异常结果
     */
    private String pushResult;

    /**
     * 消息推送状态
     */
    private MsgPushStatus pushStatus;

    public PushTaskContext() {
        this.pushResult = "";
    }
}
